package com.shujia.wyh.mysql_jdbc;

import com.mysql.jdbc.Driver;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

/*
    使用java的方式连接mysql数据库并使用
    1、注册驱动
    2、建立与数据库的连接
    3、获取操作数据库的对象
    4、执行sql
    5、处理查询结果集
    6、释放资源
 */
public class JDBCDemo1 {
    public static void main(String[] args) throws Exception {
        //1、注册驱动第一种方式：
        //java提供的工具类DriverManager类中有一个静态方法，可以让我们注册驱动
        //public static void registerDriver(Driver driver) 注册与给定的驱动程序DriverManager 。
        //我们现在使用的是mysql的驱动包，找到驱动包中实现了java提供的接口Driver对应的实现类
        DriverManager.registerDriver(new Driver());

        //2、建立与数据库的连接
        //static Connection getConnection(String url, String user, String password)
        //尝试建立与给定数据库URL的连接。
        //url：资源定位符
        //尝试建立与给定数据库URL的连接。
        /**
         *      url: 统一资源定位系统
         *          http/https: 通过网络请求去访问网络上的资源
         *          jdbc:mysql: 是驱动提供的请求头
         *          请求的地址: 指定mysql的服务器地址：192.168.169.100
         *          端口号: 3306
         *          useUnicode=true&characterEncoding=utf8
         *
         *     jdbc:mysql://服务器ip地址:3306/数据库名?useUnicode=true&characterEncoding=utf8
         *
         *     user: 用户名 root
         *     password: 密码 123456
         */
        //在mysql5.7之后，不建议其他用户直接与服务器相连
        String url = "jdbc:mysql://192.168.169.100:3306/bigdata24?useUnicode=true&characterEncoding=utf8&useSSL=false";
        String user = "root";
        String password = "123456";
        Connection conn = DriverManager.getConnection(url, user, password);
        System.out.println(conn);


        //3、获取操作数据库的对象
        Statement state = conn.createStatement();

        //4、执行sql
        String sql = "insert into users(id,name,age,address) values(1001,'王宇杰',18,'安徽合肥')";
        int i = state.executeUpdate(sql);  // 受影响的行数
        System.out.println(i);



        //6、释放资源
        conn.close();

    }
}
